export function validateWebsitesDataFormat(data) {
  // 校验数据是否为数组
  if (!Array.isArray(data)) {
    throw new Error('数据格式错误：不是数组');
  }

  // 校验数组中的每个元素
  data.forEach((item, index) => {
    // 检查是否存在必需的属性
    const keys = ['type', 'url', 'title'];
    keys.forEach((key) => {
      if (item[key] === undefined) {
        throw new Error(`数据格式错误：元素 ${index} 缺少 ${key} 属性`);
      }
    });

    // 检查 type 属性是否为字符串
    if (typeof item.type !== 'string') {
      throw new Error(`数据格式错误：元素 ${index} 的 type 属性不是字符串类型`);
    }

    // 检查 url 属性是否为字符串且是否包含 '{0}' 占位符
    if (typeof item.url !== 'string' || item.url.indexOf('{0}') === -1) {
      throw new Error(`数据格式错误：元素 ${index} 的 url 属性不是包含 '{0}' 的字符串`);
    }

    // 检查 title 属性是否为字符串
    if (typeof item.title !== 'string') {
      throw new Error(`数据格式错误：元素 ${index} 的 title 属性不是字符串类型`);
    }

    item.checked = !!item.checked;
  });
}

